Displaying Network Objects in Mobile Devices Based on Geolocation

ABSTRACT

Displaying network content searches on mobile devices involves obtaining results of a network content request via a mobile device. A geolocation of at least one object associated with the results of the network content request is also obtained. A scene is viewed in a camera view of the mobile device. A virtual location is determined in the camera view. The virtual location represents the actual location of the object relative to the scene contained in the camera view. A graphic representing the object is then displayed at the virtual location in the camera view.

CROSS-REFERENCE TO RELATED APPLICATIONS

This is a continuation application of application Ser. No. 11/328,298,filed Jan. 9, 2006, the contents of which is incorporated herein byreference in its entirety.

FIELD OF THE INVENTION

This invention relates in general to computer networking, and moreparticularly to displaying network content searches on mobile devices.

BACKGROUND OF THE INVENTION

The ubiquity of cellular phones and similar mobile electronics has ledto demands for ever more advanced features in these devices. One featurethat is of particular value in such devices is the ability to connect tothe Internet and other networks. In near future, many aspects of theglobal networks such as the World Wide Web will be shifting to cater tomobile device users. Typically, mobile adaptations for Web contentfocused on dealing with the limited bandwidth, power, and displaycapabilities inherent in mobile devices. However, the fact that mobiledevices can be used to provide data from wherever the user is locatedwill provide additional opportunities to adapt Web content and increasethe value of such content to the end user.

Mobile phones are increasingly becoming multipurpose devices. Forexample, it is becoming much more common for mobile phones to include anintegrated camera. People are getting used to the fact they are carryinga camera with them, and can always snap a photo whenever they desire.Additionally, some cell phones are carrying advanced sensors for varioususes. Sensor technology has evolved rapidly, and various sensors can beeconomically included into mobile phones. One example of this islocation sensors such as Global Positioning Satellite (GPS) receiversand digital compasses that allow a user to determine their exactlocation. These location sensors can be used for traditionalapplications, such as mapping and guidance. It is also possible thatsuccessful integration of location sensing features with networkingapplications can be used to provide more focused and relevant content tothe mobile device user. Therefore, networking applications that can usemobile device location data will be particularly useful.

SUMMARY OF THE INVENTION

To overcome limitations in the prior art described above, and toovercome other limitations that will become apparent upon reading andunderstanding the present specification, the present invention disclosesa system, apparatus and method for displaying network content searcheson mobile devices.

In accordance with one embodiment of the invention, a method involvesobtaining results of a network content request via a mobile device. Ageolocation of at least one object associated with the results of thenetwork content request is determined. A camera view associated with themobile device is determined, as is a virtual location in the camera viewthat represents the actual location of the object relative to a scenecontained in the camera view. A graphic is displayed via the mobiledevice at the virtual location in the camera view, the graphicrepresenting the object.

In more particular embodiments, determining the virtual location in thecamera view involves determining the location within a visible imagecaptured by the mobile device. Displaying the graphic may involveoverlaying the graphic onto the visible image. Determining the virtuallocation in the camera view of the mobile device may involve determininga geolocation of the mobile device, such as by accessing a globalpositioning satellite receiver via the mobile device. Determining thegeolocation of the mobile device may also involve determining anorientation of the mobile device relative to the earth's surface, suchas by determining a compass heading of the camera view and/ordetermining one or more rotation angles of the mobile device relative tothe earth's surface.

In other, more particular embodiments, the method further involvesselectably displaying via the mobile device at least one of: a) athree-dimensional view that includes the scene overlaid with thegraphic; and b) a two-dimensional view that includes a first graphicrepresenting the object and a second graphic representing a location ofthe mobile device relative to the object. A map may be selectablyoverlaid with the first and second graphics in the two-dimensional view.The method may involve switching between the three-dimensional view andthe two-dimensional view based on an orientation of the mobile devicerelative to the earth' surface. In another arrangement, the methodinvolves selectably displaying via the mobile device a two-dimensionalview that includes an arrow indicating the location of the objectrelative to the location of the mobile device.

In other, more particular embodiments, the method further involvesplaying a sound in a headphone of the mobile device. The sound isspatially-oriented to direct a user of the device to the object. In onearrangement, the method further involves determining a distance betweenthe at least one object and the mobile terminal, and modifying acharacteristic of the sound based on the distance.

In other, more particular embodiments, obtaining the results of thenetwork content request via the mobile device involves submitting asearch query to a server via the network, and obtaining the results ofthe network content request from the server in response to the searchquery. The query may be formed by detecting text in the scene usingoptical character recognition, and forming the query based on the text.

In other, more particular embodiments, the method further involvesdetermining a distance between the at least one object and the mobileterminal, and modifying visual characteristics of the graphic based onthe distance. The method may also further involve providing the abilityto select the graphic via the mobile device, and displayingsupplementary data related to the object via the mobile device inresponse to the selection of the graphic.

In another embodiment of the invention, an apparatus includes a camera,a display; a network interface capable of communicating via a network,and a processor coupled to the network interface, the camera, and thedisplay. Memory is coupled to the processor. The memory includesinstructions that cause the processor to submit a network contentrequest via the network interface. Results of the network contentrequest are obtained via the network interface, and a geolocation of atleast one object associated with the results is determined. A scene in aview of the camera is determined, and a virtual location in the viewthat represents the actual location of the object relative to the sceneis determined. A graphic is displayed in the display at the virtuallocation in the view; the graphic represents the object. In another,more particular embodiment, the memory further includes a Web browser.The instructions are configured as a plug-in to the Web browser.

In another embodiment of the invention, a computer-readable medium hasinstructions stored thereon which are executable by a data processingarrangement capable of being coupled to a network. The instructions arefor performing steps including submitting a network content request viathe network; obtaining results of the network content request via thenetwork; determining a geolocation of at least one object associatedwith the results; detecting a scene in a camera view of the dataprocessing arrangement; determining a virtual location in the cameraview that represents the actual location of the object relative to thescene; and displaying a graphic that represents the object at thevirtual location in the camera view via a display of the data processingarrangement.

In another embodiment of the invention, a system, includes means forobtaining results of a network request at a mobile device; means fordetermining a geolocation of at least one object associated with theresults; and means for displaying a graphic representing the object in alocation of a three-dimensional scene representing the object's actuallocation relative to the scene based on the geolocation of the object.

In another embodiment of the invention, a method involves determining ageolocation of a mobile device. The geolocation of the mobile device isembedded in a content request. The content request is submitted via anetwork, and the mobile device receives a document capable of beingdisplayed via the mobile device in response to the content request. Thedocument is tailored based on the geolocation of the mobile device.

In other, more particular embodiments, embedding the geolocation of themobile device in the content request involves embedding the geolocationin a Hypertext Transport Protocol (HTTP) request, such as in an HTTPheader. The method may also involve embedding a location refreshindicator in the document, and causing the mobile terminal to request anew version of the document based on a comparison of the locationrefresh indicator and the geolocation of the mobile device. In other,more particular embodiments, the method may also involve embedding alocation aware object in the document; and changing a displaycharacteristic of the location aware object based on geolocation changesof the mobile device.

These and various other advantages and features of novelty whichcharacterize the invention are pointed out with particularity in theclaims annexed hereto and form a part hereof. However, for a betterunderstanding of the invention, its advantages, and the objects obtainedby its use, reference should be made to the drawings which form afurther part hereof, and to accompanying descriptive matter, in whichthere are illustrated and described representative examples of systems,apparatuses, and methods in accordance with the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention is described in connection with the embodimentsillustrated in the following diagrams.

FIG. 1 is a block diagram of a system according to embodiments of thepresent invention;

FIG. 2 is a block diagram showing the overlaying of network data onto amobile device image according to embodiments of the present invention

FIG. 3 is a perspective view and block diagram showing additionaldetails related to overlaying network data onto a mobile device imageaccording to embodiments of the present invention;

FIG. 4 is a block diagram illustrating the provision of unique networkdata based on location according to an embodiment of the invention;

FIG. 5 is a block diagram illustrating a system for providinglocation-aware content according to an embodiment of the presentinvention;

FIG. 6 is a block diagram illustrating another location-aware systemaccording to an embodiment of the present invention;

FIG. 7 is a block diagram illustrating a representative mobile computingarrangement capable of carrying out operations in accordance withembodiments of the invention;

FIG. 8 is a block diagram illustrating an example computing structuresuitable for providing location-aware services according to embodimentsof the present invention;

FIG. 9 is a flowchart showing steps in providing network content searchresults to mobile devices according to embodiments of the presentinvention; and

FIG. 10 is a flowchart showing steps in location based network contentaccording to an embodiment of the present invention.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

A portion of the disclosure of this patent document contains materialwhich is subject to copyright protection. The copyright owner has noobjection to the facsimile reproduction by anyone of the patent documentor the patent disclosure, as it appears in the Patent and TrademarkOffice patent file or records, but otherwise reserves all copyrightrights whatsoever.

In the following description of various exemplary embodiments, referenceis made to the accompanying drawings that form a part hereof, and inwhich is shown by way of illustration various embodiments in which theinvention may be practiced. It is to be understood that otherembodiments may be utilized, as structural and operational changes maybe made without departing from the scope of the present invention.

Generally, the present invention involves merging location data from amobile electronics device with specific network data such as Web pages.In one example, images available from a portable camera device arecombined with network data in order to locate goods, services, or otherpoints of interest. A camera phone or similar device can be used to viewa scene such as a city street. By using various devices that may beembedded in the camera phone (e.g., GPS receivers, digital compass,accelerometers), the camera phone can determine the spatial orientationof the camera's viewfinder. The device may also be able to searchnetwork data related to objects (e.g., buildings, landmarks) that havelocation data associated with them. This localized network data can becombined with the spatial orientation and location data of the phone. Anoverlay of search results can be overlaid on the camera phone image. Theoverlay shows the location of the objects relative to the scenecontained in the image.

The ability to continuously monitor the location of the device alsomeans that image overlays can be combined with other features thatassist the user in finding a target location. In one example, atwo-dimensional map can be displayed on the device showing instructionson how to proceed to the target. In yet another example, 3-D audio canbe provided by the mobile device to assist a user in finding a locationassociated with network content.

The localization of search results can be used to provide additionalenhancements to portable computing network applications. For example,the behavior of a Web page or other application can vary based on thecurrent physical location of the device. Determining the location of amobile user means that Web content delivered to those users can be moreoptimized to that specific location. Often, it is most useful to haveinformation about places and situations where the content is the mostvaluable, particularly those places and situations that are close to thecurrent user's location. Location information can be used to moreaccurately select Web objects and content in the context of browsing orother Internet applications.

In reference now to FIG. 1, a system 100 according to embodiments of thepresent invention is illustrated. A user 102 has a mobile device 104that may be used for any type of portable data communications. Typicalmobile devices 104 include cellular phones and PDAs, but may alsoinclude laptop computers, portable music/video players, automotiveelectronics, etc. The functions of the mobile device 104 may also beincluded in apparatuses that are not typically mobile, such as desktopcomputers.

The mobile device may include any number of peripheral devices 106 forprocessing inputs and outputs. For example, the peripheral devices 106may include a camera 108, audio equipment 110 (e.g., microphones andspeakers), and displays 112 (e.g., LCD and LED displays). The mobiledevice 104 may also contain location sensing devices 114. The locationsensing devices 114 may include any combination of apparatus that enablethe mobile device 104 to determine its absolute or relative position.Typical location sensing devices include GPS 116, digital compass/level118, accelerometers 120, and proximity detectors 122 (e.g., RadioFrequency ID tags, short-range radio receivers, infrared detectors). Itwill be appreciated that the location sensors 114 may be considered aparticular class of peripheral devices 106, and the categorization ofsuch devices is only illustrative and not meant to limit the purposesfor which the devices may be employed.

The mobile device 104 contains functional modules that enable it toperform locality-specific enhancements as described herein. The mobiledevice 104 includes location-aware applications 124 that are enabled totake advantage of the peripheral device 106 and location sensors 114.The location-aware applications 124 may also be capable of accessing oneor more networks 126 via wired or wireless network interfaces of themobile device 104. The networks 126 may include any combination ofprivate and public networks, and may range in size from small ad hocpeer-to-peer networks to a global area network such as the Internet.Generally, the networks 126 provide network data services to the mobiledevice 104, as represented by the server 128 and database 130 that areaccessible via the networks 126.

The data obtained at the mobile device 104 via the networks 126 mayinclude any data known in the art, including text, images, and sound. Ofparticular interest in data that can be indexed/referenced by location,as represented by geographically indexed services 132. Thegeographically indexed services 132 generally provide the ability tosearch for entities based on the proximity to a particular geographicallocation. The service 132 may also provide other standard categorizationof services, including by business names, type of product or serviceavailable, government services, geographical landmarks, sites ofinterest, etc.

In one configuration, the location aware applications 124 providethree-dimensional location of data objects using the camera 108 anddisplay 112. An example of this is shown in FIG. 2, which illustrates amobile device 200 according to an embodiment of the present invention.The mobile device 200 is generally able to find object data related tophysical locations and superimpose icons related to that data on a threedimensional camera view. For example, assume the end-user is attemptingto find shops and restaurants near his or her current location. The usercan begin the search by forming a query 202 (e.g., “find around me:shops and restaurants”) on an application of the mobile terminal 200.

The mobile terminal 200 can utilize location sensing devices (e.g.,devices 114 in FIG. 1) to determine the current location of the mobileterminal 200. The terminal 200 may include this location data in thequery 202, and then send the query to a search server 204 via a network206. The search server 204 will return results 208 that may include allrelevant URLs and location coordinates associated with the URLs. Adescription of how location based searches may be performed aredescribed in commonly owned patent application Ser. No. 10/822,641 filedApr. 12, 2004 and entitled “Methods and Apparatus for GeographicallyBased Web Services” by Hamynen, et al, which is hereby incorporated byreference in its entirety.

The results 208 provided from the server 204 may include additionalinformation related to the URLs that satisfy the query 202. For example,a custom icon or other graphical element may be associated with the URL.The end user may be able to see the results 208 using a standard text orgraphical Web page (not shown). However, the user may also be able toutilize a digital camera 210 of the terminal 200 in order to see thequery results 208 overlaid on an image of the user's currentsurroundings. The user may take a static or dynamic (e.g., video stream)picture of the landscape using the camera 210. The image is shown on adisplay 212 of the device. Part of the results 208 are then overlaid onthe display 212 using graphical elements, such as icons 214 and text216.

The icons 214 may be a general purpose graphic as shown, or may becustomized, such as by using a trademark or service mark. The icons 214and text 216 may include various additional features that increase theirusefulness to the user. For example, the characteristic of an icon 214and text 216 can change depending on the distance of the representativeobject (e.g., business) from the user. For example, the icon 214 couldbe displayed smaller if the representative object is farther away. Anycombination of size, color, line style, transparency, and the like maybe used to indicate distance from the user. The icons 214 and text 216may also have other enhanced features of Web page objects. For examplethe icons 214 and text 216 may be user selectable, and containhyperlinks and descriptive text.

Although the illustrated display 212 and camera 210 are integrated withthe mobile device 200, it will be appreciated that alternate camera anddisplay devices may used. For example, the display 212 and/or camera 210may be integrated into eyewear or headwear, so that the user may notrequire separate display of the landscape because the landscape isalready in the user's current field of view. However, the icons 214and/or text 216 could be overlaid onto the user's current field of viewusing, for example, an eyeglass projector or miniature heads-up display.In such a case, the mobile device 200 would not even require a camera210, although a virtual camera view would still likely be calculated inorder to correctly place graphics 214, 216 in the user's field of view.Such a virtual view could be calculated from location sensing apparatuscontained in the mobile device 200 or elsewhere on the person (e.g.,eyeglasses).

Additional details related to overlaying network data onto a mobilecamera image according to embodiments of the present invention is shownin FIG. 3. Generally, a user 300 points a camera-enabled mobile device302 in the area of interest. An imaginary bounding volume 304 defines atheoretical space that would be viewable from the mobile device 302 ifno objects were blocking the view. The bounding volume 304 is generallypyramidal or conical in shape, and its dimensions can be calculatedbased on the orientation of the camera device 302 and various aspects ofthe lens (e.g., F-stop, zoom angle, etc.). Algorithms used to calculatethe bounding volume 304 may truncate the base of the volume 304 to amaximum distance dictated by the distances used in geographic searches.For example, if the search (e.g., as shown in search string 305) was fora pub within two kilometers, the volume 304 would extend for twokilometers from the camera device 302.

Positioning data 308, along with known characteristics of the cameralens, can be used to determine the volume 304. Location sensingapparatus of the device may produce the positioning data 308, which mayinclude latitude, longitude, altitude, compass heading, tilt androtation. The first three measurements of the data 308 fix the originthe volume 304. The latter three measurements are taken relative to thelens of the camera device 302, and fix the orientation of the volume304. Once volume boundaries are determined, the volume 304 can be usedto filter the results of geographically indexed searches and superimposethose results over the camera image 306.

Any items immediately visible within the imaginary volume 304 areincluded in the resulting scene image 306 and may be displayed in thedevice 302. The location of the search results can then be overlaid onthe scene image 306. Generally, a geographically based search willprovide results (e.g., URLs) limited to specific geographic boundaries.These boundaries may be defined in any way, including a circularboundary (e.g., within a 5 km radius from user) and/or a polygonboundary (e.g., within bounding line segments). When displaying suchresults, the results are further limited to include only those withinthe current view (e.g., within the bounding volume 304). The remainingresults can be mapped within the current view to form a composite view310. In this example, the final results are shown as an icon 312 andtext 314.

When the end-user is pointing the camera device 302 in the correctdirection, icons and text 312, 314 representing the search results arevisible on the screen 310. The user can select these objects 312, 314 toaccess the underlying data (e.g., a Web page URL). The user can furtherlimit the display of objects 312, 314, such as by setting some objectsto active, and the rest to inactive. If the user has selected a subsetof URL's as active, and the camera device 302 is not pointing in theright direction to view some or all of those objects, the user may beshown an indicator such as the arrow 316. The arrow 316 shows theend-user which direction to turn the device 302 in order to see theobject representing the active URL on the screen.

Some or all search results in the above example can be shown as icons(e.g., icon 312) in the three-dimensional environment view 310. The usercan open Web-pages associated with the icon 312 activating (e.g.,clicking) the icon 312. The end-user can also perform additional actionsby selecting icon(s) 312 to be active. For example, the user may selectan icon 312 in order to be provided with directions to the icon, or tobookmark the URL represented by the icon.

Although the user may provide broad guidelines when initiating alocation-based search (e.g., “restaurants”), the resulting number ofhits may be too large for effective display in a map view. The systemcan provide all manner of relevant information for helping the end-userfurther refine the search. For example, factors such as distance,expected time to reach the object, opening times, keywords, etc., may beused to rank and/or filter results. It may also be beneficial to allowthe user to access the search results in a two-dimensional view, asrepresented by view 320. The two-dimensional view 320 may include anicon 322 representing the user's current location, and icons 324, 326that represent search results. The two-dimensional view 320 also may beused to provide directions to the user. For example, icon 324 iscurrently selected (as represented by the box around the icon 324), andthe view 320 also shows an arrow 326 directing the user to the targetrepresented by the icon 324.

The two-dimensional view 320 may also include a map background 330. Themap background 330 may be implemented using Scaleable Vector Graphics(SVG) or other graphical formats. The data used to form the mapbackground 330 may be stored on the device 302 or may be provided viathe network. The map, icons 322, 324, 326 and arrow 326 may beconfigured to rotate along with rotations of the mobile device 302. Theillustrated view 320 may include too much information to be successfullyrendered on some device screens. If so, a subset of the illustratedfeatures could be utilized in order to assist the user in navigating tothe destination. For example, the view 320 may just show the arrow 328indicating the required direction of movement to reach the target.

The terminal 302 could also provide additional enhancements to the two-and three-dimensional views 320, 310 in order to assist the user 300 infinding the target location. For example, the terminal could place arespective three-dimensional and two-dimensional animations on thedisplays 320, 310, the animations illustrating a virtual path forreaching the intended destinations. This animation could be in the formof a moving cursor, and virtual “fly-through,” or other action sequencethat illustrate the destination path. The user 300 could have the optionof saving this path as a browser bookmark or other persistent storage inorder to retrace this path at a later time.

The mobile device 302 may be configured to easily switch between thethree-dimensional camera viewfinder view 310 and two dimensional mapview 320 in order to optimize the user experience. For example, the usermay be able to toggle between the views 310, 320 via a single key press.In another arrangement, accelerometers or other level sensing devicescould be used to detect when the device 302 is tilted horizontally orvertically, and to automatically switch between the two-dimensional view320 or the three-dimensional view 310 accordingly.

Although the arrow 326 may be useful in giving the user 300 a visualindication of the direction he or she desires to go, it may not bepractical for the user 300 to continuously monitor the display 310, 320.A typical display also consumes a significant portion of the device'savailable battery power. Therefore it may not be power efficient torequire the user 300 to monitor a display 310, 320 for long periods oftime. Also, it may be difficult to walk while looking at a display.However, the mobile device 302 typically contains additional userinterfaces, and these interfaces may be used to supplement theinformation provided by the displays 310, 320.

For example, the device 302 may include a 3-D sound module 331associated with a browser or other network software. Generally, 3-Dsound refers to technologies that allow sounds to processed andreproduced so that parts of the resulting sound is perceived as being ina predetermined location. Such 3-D processing is commonly included hometheater systems that may use three or more distinct channels that areeach routed separate speakers. For purposes of the mobile device 302,however, there are 3-D processing algorithms that allow a simulatedmulti-channel effect to be experienced in headphones 332. Even standardheadphones 332 that process a two-channel audio signal can providesignificant left and right spatialization. The 3-D sound module 331 canprovide even more effective spatialization effects that cause sound tobe perceived in all directions all around the user 300, even usingstandard headphones 332.

The 3-D sound module 331 can be used in connection with the headphones332 and a search engine to help finding a target location. Thisapplication of sound can be particularly useful where user is searchingfor locations in an unfamiliar location and does not wish to bedistracted by continually having to look down at the mobile device 302.For example, while walking in an unfamiliar city, the user 300 maysearch for “sushi bar” and the search engine can return the map(s) 310,320 of the location and play a 3-D sound (e.g., tone or sound effect) inthe headphones 332 corresponding to the direction of the nearest sushibar. The user 300 then places the device 302 in his or her pocket, andwalks in the direction of the 3-D sound, which may be repeatedlyre-localized as the user's location changes. In this way, the user 300can enjoy the walk while being gently reminded of the correctdestination.

The 3-D module 331 might also provide different sounds for differentpurposes. For example, if the user wanted to be notified of a local802.11 wireless hotspot that is detected by the device 302, a differentsound that corresponds to the estimated location of the hotspot could beplayed in the headphones 332. Similarly, the 3-D module 331 could modifycharacteristics of the sound (e.g., volume, pitch, content) depending ondistance from the destination. As with the 2-D and 3-D views 310, 320,the 3-D sound module 331 may use any combination of GPS, digitalcompass, accelerometers, and other apparatus to determine and update theuser's location. The 3-D sound module 331 may be a stand-aloneapplication or an extension to an existing program (e.g., browserplug-in).

One advantage of location detection on mobile devices is that users canuse the mobile device 302 as a combination map, compass, and guide book.The user can use the device 302 in order to discover the existence of adesired place, determine the location of the places, and then navigatethere. There may be additional location dependent enhancements that maybe provided to the mobile device. For example, vendors and serviceproviders may wish to use location services in such devices 302 in orderto provide a more unique experience to user, and in this way attractmore customers.

One aspect of providing unique network data based on location accordingto an embodiment of the invention is shown in FIG. 4. A location object402 is the subject of network content such as a Web page. The locationobject 402 may be any building, landmark, vending machine, or otherobject with a determinable location. A location-aware terminal 404 hasthe ability to determine its own location, at least relative to thelocation object 402. The terminal 404 is also capable of accessingnetwork data, such as by input of a URL 406. In response to inputting aURL, the terminal 404 downloads or accesses content, as represented by aWeb page 408.

The terminal downloads the Web page 408 in using mechanisms that arewell known in the art, such as Hypertext Transport Protocol (HTTP) andsecure HTTP (HTTPS). Typically, the URL 406 is used to form an HTTP GETor POST request. Other data is also typically included in the request,including a version indicator, type of browser used at the terminal 404,etc. An additional parameter that the terminal 404 can use as part ofthe request is the location of the terminal 404. The terminal's locationcan be appended to the request, passed in HTTP headers, or communicateddirectly or indirectly in other ways known in the art.

The response that the terminal 404 receives from the request may varybased on the location of the terminal 404. In the illustrated example, acontent server 410 provides content related to the location object 402as represented by dashed line 413. The content server 410 receives therequests via a network 412 and forms responses based on the locations(if any) received in the requests. The server can calculate the locationof the requestor (e.g., the terminal 404) relative to the locationobject, and provide custom tailored content depending on the location.In the illustrated example, there are three different zones 414, 416,and 418 that are delimited by concentric circles. If no terminallocation is detected, or if the location is in the farthest zone 414 asrepresented by location 420, then a default response 422 is delivered tothe terminal 404.

If the terminal is located in the second zone 416 as represented bylocation 424, then a different response 426 is presented to the terminal404. This second zone 416 may represent, for example, a single city ormetropolitan area. If the terminal 404 is located in the third andclosest zone 418 as represented by location 428, then a third response430 is presented. This third zone 418 may represent a reasonable walkingdistance from the location object 402, and the vendor or serviceprovider may want to attract the user's attention with a special offerif the user will pay a visit. As well as providing responses tailored toa single particular zone 414, 416, 418, the content server 410 mayprovide a combination of responses 420, 424, 426 tailored for two ormore of the zones 414, 416, 418. For example, if the object 402 is astore that is part of a chain of stores, the user could see a detailedresponse 428 describing the nearby store 402 while the user is in zone418. This response 428 can be combined with a less detailed response 424describing other store locations within the larger zone 416 (e.g.,within the same city).

Not only can the terminal 404 provide location information in a request,but the content server 410 can also provide location information inresponse to requests. The location information can be added to thecontent, such as by the insertion of comments or other tags in an HTMLdocument. By parsing this location information added by the server 410,the terminal 404 can limit the display of information to that which haslocation relevancy some distance from the terminal 404. If the server410 provides location-based network content, it may be desirable toupdate network content such as the Web page 408 when the terminal 404enters new locations related to the Web page 408.

The objects within the Web page 408 may be enabled to detect locationinformation in order to control behavior of the objects. For example, animage 432 in the Web page 408 may include an SVG animation of thelocation object 402. The image 432 could be configured to change sizerelative to the distance of the actual location object 402. Note thatthis behavior may require knowing both the current terminal location andthe location of the object 402. While the terminal 404 is changingposition, it may not be necessary to download additional behaviors ofthe image 432, as location changes can be detected internally at theterminal 404. This can conserve the use of network bandwidth.

However, there may be some cases where location information forces thereloading of information over the network 412. For example, if a usertransitions from zone 416 to zone 418, the content server 410 may wantthe terminal to reload the Web page 408 in order to obtain more relevantinformation. To do this, the content server 410 may include instructionsthat cause the Web page 408 or other downloadable objects to bere-downloaded. This could work similar to the “refresh” tags that forcea browser to reload a page after a certain period of time has elapsed.Instead of time, a “location-refresh” could force a reload based on adistance from a given location.

Location-aware network content behavior may be applied to other networkobjects. For example, audio objects that are played in the Web page 408(or via other programs) could change characteristics based on thedistance to the target object 402. The characteristics of the sound thatcould change include content, volume, pitch, etc. Generally, any contentthat can be rendered via the terminal 404 may have location dependentbehavior, including text, video, graphics, sound, vibration, behavior ofLEDs, and other indicators, etc. The behavior may be built into theterminal's browser, or may be provided by way of a location objectsplug-in. The browser and/or plug-in could handle parsing andinterpreting location object information, determining terminal 404location, and updating network content according the location objectguidelines.

In one arrangement, the location information can be placed in the Webpage 408 in the form of a Location eXtensible Markup Language (XML)file. The Location XML page could also contain the control informationthat defines object behavior. Systems and/or software that do notsupport location control information may show the page content 408without any control behavior. An example HTML segment and XML documentdescription for updating and image is shown in Listing 1. The image“menu_L1_selected_begin.gif” will change after a 100 meter deviationfrom the original position is detected. Generally, location-awareobjects may be implemented so that there are separate XML files for eachobject. Each XML file could have a unique location based control commandfor the respective objects.

Listing 1 ----HTML page---- <?xml-location type=“text/location”href=“location_XML_1A.loca”?> <td><img src=“/mnc/framework/skins/mnc/images/  menu_L1_selected_begin.gif” alt=“”width=“12” height=“22” border=“0”/> </td> ----Location XML Document----<?xml version=“1.0”?> <LOCATION XML> <IMG1>src=“/mnc/framework/skins/mnc/images/ menu_L1_selected_begin.gif”</IMG1> <LOCATION CNTR CMD1>deviation 100m </ LOCATION CNTR CMD1 > <CNTRCMD1 UPDATE> src=“/mnc/framework/skins/mnc/images/menu_L1_selected_100m.gif” </CNTR CMD1 UPDATE > </LOCATION XML>  ©2005,Nokia Corporation

Generally, the systems described above provide location-aware contentfor user applications, particularly for mobile device applications. Amore particular system 500 for providing this content according to anembodiment of the present invention is shown in FIG. 5. Client software502 is adapted to run on end-user processing equipment such as a mobileterminal. The client software 502 includes a positioning/mapping module504 that allows the software 502 to determine current location, and mayprovide other mapping and location functions.

The client software 502 contains a user interface 506 for accessinglocation-aware databases 510. A protocol module 508 allows the client502 to direct searches to location aware databases 510. Thelocation-aware databases 510 can be configured to reply to queries basedon object names, position coordinates, and other information such asphone numbers, addresses, icons, images of the destination place orobject, etc. The responses provided by the databases 510 may include aURL which identifies a network path where the localized Web content canbe found. Queries can also be directed to particular databases 510 basedon a category selection. For example, databases 510 may be includespecialized databases such as business directories 512, personaldirectories 514, government services 516, locations of other mobileusers 518, map services 520, 522, personalized databases 524 customizedfor each client 502, and any other database 525.

The personalized database 524 may be included as part of the networkinfrastructure (as illustrated) and/or be included on the same device asthe client 502. The personalized database 524 may be automaticallyupdated with content from the location-aware databases 510. For examplewhen the end-user travels to a new city, the client 502 can detect thenew location and use the personalized database 524 to determine ifrelated database links are available for the present location. Theclient 502 may also query the end-user whether to accept new localdatabase links to the client user interface 506. If the new services areaccepted, the client 502 can download new links to the user interface506 and place icons and other graphics accordingly. For example, theicons may represent banks, teller machines, vending machines, or otherservices of interest to the end-user. The client software 502 maps thesegraphics on 2-D or 3-D maps, as described elsewhere herein.

The client software 502 may access the databases 510 directly orindirectly, using such tools as HTTP, Simple Object Access Protocol(SOAP), Active Server Pages (ASP), PHP, or any other network-based dataaccess protocol. In the illustrated example, the client software 502interfaces with a location-aware service 530. The service 530 may beimplemented on any number of network server devices. The service 530contains a generic front end access interface 532 that may be utilizedby various types of client software 502. Again, technologies such asXML, SOAP, ASP, PHP may be used by the access interface 532. The accessinterface 532 may be capable of handling a wide variety of data formatsand protocols for finding and presenting location-dependent information.For example, the access interface 532 may be used to provide data fromlocation aware databases 510 in such formats as Web pages, XML document,text documents, binary objects (e.g., programs, ActiveX controls, JavaBeans), email, text messages, instant messages, streaming media, etc.

The access interface 532 communicates with business logic 534. Thebusiness logic decodes requests and formats replies. The business logic534 acts as an intermediary between the access interface 532 andback-end database interfaces 536. The back-end database interfaces 536are lower level functional units capable of providing a uniform methodof accessing the diverse databases 510. The back-end database interfaces536 may include customized adaptors (e.g., adapter 538) that aretailored for particular databases 510. For example, the adapter 538 iscustomized for data structures and access protocols used by the businessdirectory database 512.

The location aware service 530 may include additional services needed byclients 502 and other location-aware entities. There can be functionalmodules such as account management 538, map download services 540, andusage statistics 542. The usage statistic service 542 may track siteaccesses to determine advertising effectiveness, determine correlationbetween search queries and results, etc.

A more particular example of a location-aware system according to anembodiment of the present invention is shown in FIG. 6. A location awareclient application 600 runs in a mobile terminal 602, and is capable ofdetecting the location of the terminal 602. The application 600 includesa user interface 604 that is accessible by the terminal's user. The userinterface 604 may include an input field 606 for entering search queriesdirected to one or more localized databases 610. The user interface 604may also include links 608 for accessing a particular localized database610.

The links 608 are a quick and easy tool for finding local objects basedon pre-defined categories. For example, selecting a “bank” link 612 maycause a query to be sent to a banking database 614 in order to find bankbranches or teller machines near the location of the terminal 602.Generally, the application 602 communicates with the databases 610 via alocation-aware server 616, which provides a common interface for alllocation-aware services.

The location-aware databases 610 may be populated using an independentsearch entity, such as a search engine. The databases 610 may also besupplemented by local marketing 618 and global marketing 620 entities inorder to increase the visibility of localized services to mobile deviceusers. Generally, the marketing entities 618, 620 have an incentive toensure the accuracy of the location data, and therefore can provideincreased reliability over methods such as identifying and parsingaddresses via a search engine.

Many types of apparatuses may be able to operate location-aware clientapplications as described herein. Mobile devices are particularly usefulin this role. In reference now to FIG. 7, an example is illustrated of arepresentative mobile computing arrangement 700 capable of carrying outoperations in accordance with embodiments of the invention. Thoseskilled in the art will appreciate that the exemplary mobile computingarrangement 700 is merely representative of general functions that maybe associated with such mobile devices, and also that landline computingsystems similarly include computing circuitry to perform suchoperations.

The processing unit 702 controls the basic functions of the arrangement700. Those functions associated may be included as instructions storedin a program storage/memory 704. In one embodiment of the invention, theprogram modules associated with the storage/memory 704 are stored innon-volatile electrically-erasable, programmable read-only memory(EEPROM), flash read-only memory (ROM), hard-drive, etc. so that theinformation is not lost upon power down of the mobile terminal. Therelevant software for carrying out conventional mobile terminaloperations and operations in accordance with the present invention mayalso be transmitted to the mobile computing arrangement 700 via datasignals, such as being downloaded electronically via one or morenetworks, such as the Internet and an intermediate wireless network(s).

The mobile computing arrangement 700 includes hardware and softwarecomponents coupled to the processing/control unit 702 for performingnetwork data exchanges. The mobile computing arrangement 700 may includemultiple network interfaces for maintaining any combination of wired orwireless data connections. In particular, the illustrated mobilecomputing arrangement 700 includes wireless data transmission circuitryfor performing network data exchanges.

This wireless circuitry includes a digital signal processor (DSP) 706employed to perform a variety of functions, including analog-to-digital(A/D) conversion, digital-to-analog (D/A) conversion, speechcoding/decoding, encryption/decryption, error detection and correction,bit stream translation, filtering, etc. A transceiver 708, generallycoupled to an antenna 710, transmits the outgoing radio signals 712 andreceives the incoming radio signals 714 associated with the wirelessdevice.

The mobile computing arrangement 700 may also include an alternatenetwork/data interface 716 coupled to the processing/control unit 702.The alternate network/data interface 716 may include the ability tocommunicate on secondary networks using any manner of data transmissionmedium, including wired and wireless mediums. Examples of alternatenetwork/data interfaces 716 include USB, Bluetooth, Ethernet, 802.11Wi-Fi, IRDA, etc. The processor 702 is also coupled to user-interfaceelements 718 associated with the mobile terminal. The user-interface 718of the mobile terminal may include, for example, a display 720 such as aliquid crystal display and a camera 722. Other user-interface mechanismsmay be included in the interface 718, such as keypads, speakers,microphones, voice commands, switches, touch pad/screen, graphical userinterface using a pointing device, trackball, joystick, etc. These andother user-interface components are coupled to the processor 702 as isknown in the art.

Other hardware coupled to the processing unit 702 includes locationsensing hardware 724. Generally, the location sensing hardware 724allows the processing logic of the arrangement 700 to determine absoluteand/or relative location and orientation of the arrangement. Thelocation may be expressed in any known format, such as lat/lon and UTM.The orientation may be expressed using angles of a component of thearrangement (e.g., lens of the camera 722) relative to known references.For example, pitch and roll measurements may be used to define anglesbetween the component and the earth's surface. Similarly, a headingmeasurement may define an angle between the component and magneticnorth. The location sensing hardware 724 may include any combination ofGPS receivers 726, compasses 728, accelerometers 730, and proximitysensors 732, and any other sensing technology known in the art.

The program storage/memory 704 typically includes operating systems forcarrying out functions and applications associated with functions on themobile computing arrangement 700. The program storage 704 may includeone or more of read-only memory (ROM), flash ROM, programmable and/orerasable ROM, random access memory (RAM), subscriber interface module(SIM), wireless interface module (WIM), smart card, hard drive, or otherremovable memory device. The storage/memory 704 of the mobile computingarrangement 700 may also include software modules for performingfunctions according to embodiments of the present invention.

In particular, the program storage/memory 704 includes a corefunctionality module 734 that provides some or all of the location-awareclient functionality as described hereinabove. The core functionality734 may be used by a standalone location-aware client application 736.The core functionality 734 may also be included as a location-awareplug-in module 738. The plug-in module 738 may be used to extend thefunctionality of other applications such as a browser 740 or othernetworking applications 742. These applications 740, 742 have respectivegeneric plug-in interfaces 744, 746 that allow third parties to extendthe functionality of the core application 740, 742.

The core functionality module 732 includes a location-aware networkprotocol module 748 that allows the arrangement 700 to download, upload,search for, index, and otherwise process network content that includesobject locations. This location data may be exchanged with otherentities via a network 750. The location content may be provided, forexample by a Web server 752 and/or network accessible database 754. Thelocation-aware network protocol module 748 may also determine locationsof the arrangement 700 via a location/orientation module 756. Thelocation/orientation module 756 is adapted to detect location and/ororientation from location sensing hardware 724 and performtransformations in order to present location and orientation informationinto a common format for other components of the core functionalitymodule 734.

Part of the functionality included in the core module 734 relates todisplaying search results and other location-specific data via the userinterface hardware 718. A multimedia framework module 758 includes thecapability to capture and display data relevant to presentinglocation-aware searches to users. For example, a digital imaging module760 may be able to capture images via the camera 722 and display theimages in the display 720. These images can be synchronized withlocation/orientation data from the location/orientation module 756. Thedigital imaging module 760 can use the captured images and location datato overlay one or more location objects 761 onto the image. The locationobjects 761 typically correspond to results of network data searchesconducted via the network protocol module 748.

The digital imaging module 760 may also be configured to access locallyor remotely stored maps via a mapping module 762. These maps can beoverlaid with (e.g., placed on backgrounds of) the two-dimensional view,or be formatted in a perspective format and overlaid on top ofthree-dimensional images taken via the camera 722. The digital imagingmodule 760 can also control toggling between two-dimensional andthree-dimensional views based on orientation data obtained from thelocation/orientation module 756.

The location objects 761 generally represent search results or otherdata obtained from the network 750 via the network protocol module 748.The objects 761 may be presented to the user as text, graphics, sounds,tactile feedback, and any other user output interface element known inthe art. The objects 761 may be the result of queries that are inputmanually by the user, or the result of predefined categorical searches.

Another way the arrangement 700 may form queries is to utilize anoptical character recognition (OCR) module 764 to detect informationcaptured via the camera 722 or other device. The OCR module 764 caninterface with the digital imaging module to read characters from videostreams or still images. When the OCR module 764 detects characters onthe video/images, the characters could be used as inputs to find localWeb pages of other content via network protocol module 748. The matchesfound via the OCR module 764 could also be placed on composite imagesproduced by the imaging module 760. Although the OCR module 764typically captures text data, it will be appreciated that the module 764may be adapted for related image recognition tasks, such as recognizinglogos, landmarks, locations, etc.

The digital imaging module 760 may also render various graphics thatguide the user to a desired location. One example of this is to placearrows or animations n two-dimensional or three-dimensional views toindicate where the user should go. The imaging module 760 can alsointerface with other input/output modules to perform similar functions.For example, the arrangement could play spatially oriented sounds to theuser the user via a 3-D audio module 766 in order to direct the user tothe final location. The digital imaging module 760 may also control thebehavior of location objects 761 based on location updates received vialocation/orientation module 756. For examples, a particular object 761may be an icon that changes size, color, transparency, etc., dependingon a distance of the arrangement 700 from the target that the iconrepresents.

The mobile computing arrangement 700 of FIG. 7 is provided as arepresentative example of a computing environment in which theprinciples of the present invention may be applied. From the descriptionprovided herein, those skilled in the art will appreciate that thepresent invention is equally applicable in a variety of other currentlyknown and future mobile and landline computing environments. Forexample, desktop computing devices similarly include a processor,memory, a user interface, and data communication circuitry. Thus, thepresent invention is applicable in any known computing structure wheredata may be communicated via a network.

The location aware client applications may be able to detect objectlocations using standard search engine techniques. For example, a searchengine may be able to parse addresses from Web pages and associate ageocoordinate with that address. However, a more complete and accuratedatabase of objects and associated locations can be obtained byproviding specialized databases that associate the location ofparticular objects (e.g., building, landmarks) with Web addresses. Oneway to do this, as described hereinabove, is to provide one or morenetwork components that centralize and standardize various types oflocation-referenced data. FIG. 8 shows an example computing structure800 suitable for providing location-aware services according toembodiments of the present invention.

The computing structure 800 includes a computing arrangement 801. Thecomputing arrangement 801 may include custom or general-purposeelectronic components. The computing arrangement 801 includes a centralprocessor (CPU) 802 that may be coupled to random access memory (RAM)804 and/or read-only memory (ROM) 806. The ROM 806 may include varioustypes of storage media, such as programmable ROM (PROM), erasable PROM(EPROM), etc. The processor 802 may communicate with other internal andexternal components through input/output (I/O) circuitry 808. Theprocessor 802 carries out a variety of functions as is known in the art,as dictated by software and/or firmware instructions.

The computing arrangement 801 may include one or more data storagedevices, including hard and floppy disk drives 812, CD-ROM drives 814,and other hardware capable of reading and/or storing information such asDVD, etc. In one embodiment, software for carrying out the operations inaccordance with the present invention may be stored and distributed on aCD-ROM 816, diskette 818 or other form of media capable of portablystoring information. These storage media may be inserted into, and readby, devices such as the CD-ROM drive 814, the disk drive 812, etc. Thesoftware may also be transmitted to computing arrangement 801 via datasignals, such as being downloaded electronically via a network, such asthe Internet. The computing arrangement 801 may be coupled to a userinput/output interface 822 for user interaction. The user input/outputinterface 822 may include apparatus such as a mouse, keyboard,microphone, touch pad, touch screen, voice-recognition system, monitor,LED display, LCD display, etc.

The computing arrangement 801 may be coupled to other computing devicesvia networks. In particular, the computing arrangement includes anetwork interface 824 for interacting with location reference databases826 and client applications 828 (e.g., mobile terminal software) via anetwork 830. The network interface 824 may include a combination ofhardware and software components, including media access circuitry,drivers, programs, and protocol modules.

The computing arrangement 801 includes processor executable instructions831 for carrying out tasks of the computing arrangement 801. Theseinstructions include client interfaces 832 capable of communicating withclient applications 828. The client interfaces 832 are generally capableof receiving search queries, delivering search results, determiningclient capabilities and locations, etc. The client interfaces 832 mayinterface with a client database 834 for storing data related to clientapplications 828, including preferences, capabilities, custom searchqueries, usage statistics, etc. One or more location-aware applications838 may control the business logic for communicating with clientapplications 828. The location-aware applications 838 receive queries,execute searches on location databases 826, format results for theclient applications 828, etc. The location-aware applications 838 mayutilize one or more database interfaces 836 for communicating with thelocation databases 826.

The computing structure 800 is only a representative example of networkinfrastructure hardware that can be used to provide location-basedservices as described herein. Generally, the functions of the computingstructure 800 can be distributed over a large number of processing andnetwork elements, and can be integrated with other services, such as Webservices, gateways, mobile communications messaging, etc.

In reference now to FIG. 9, a flowchart illustrates a procedure 900 fordisplaying network content searches on mobile devices according toembodiments of the present invention. The procedure involves obtaining(902) results of a network content search via a mobile device. Ageolocation of at least one object associated with the results of thenetwork content search is obtained (904). A scene is viewed (906) in acamera view of the mobile device. A virtual location is determined (908)in the camera view. The virtual location represents the actual locationof the object relative to the scene contained in the camera view. Agraphic representing the object at the location in the camera view isthen displayed (910).

In reference now to FIG. 10, a flowchart illustrates a procedure 1000for getting location-based network content, such as via a mobile device.A geolocation of the mobile device is determined (1002), and thegeolocation is embedded (1004) in a content request. Embedding (1004)the geolocation may involve, for example, placing the geolocation in theheader or body of an HTTP request. The content request is submitted(1006) via a network, and, in response, a document is received that iscapable of being displayed via the mobile. The document is tailoredbased on the geolocation of the mobile device.

The foregoing description of the exemplary embodiments of the inventionhas been presented for the purposes of illustration and description. Itis not intended to be exhaustive or to limit the invention to theprecise form disclosed. Many modifications and variations are possiblein light of the above teaching. It is intended that the scope of theinvention be limited not with this detailed description, but ratherdetermined by the claims appended hereto.

1-36. (canceled)
 37. A method comprising: causing at least in part,receiving of network content at a mobile device in response to a networksearch query, wherein the network content is based at least in part on ageolocation of the mobile device; determining, based at least in part ona second geolocation associated with at least one object described inthe network content, a virtual location in the camera view associatedwith the actual location of the object relative to a scene contained inthe camera view; and causing at least in part, displaying via the mobiledevice a graphic representing the object at the virtual location in thecamera view.
 38. The method of claim 37, further comprising: measuringthe geolocation of the mobile device via the mobile device; andincluding an indicator of the geolocation of the mobile device in thenetwork search query, wherein the network content is based on theindicator included in the network search query.
 39. The method of claim38, wherein the network search query further includes geographicboundary data used for further filtering the network content.
 40. Themethod of claim 39, wherein the geographic boundary data comprises abounding volume determined at least in part based on the camera view.41. The method of claim 39, wherein the geographic boundary datacomprises a distance from the mobile device.
 42. The method of claim 37,wherein displaying the graphic representing the object comprisesdifferentiating a display characteristic of the graphic based on adistance of the object from the mobile device.
 43. The method of claim42, wherein the display characteristic comprises any combination ofsize, color, line style, and transparency of the graphic.
 44. The methodof claim 42, wherein the display characteristic comprises a level ofdetail used to describe the object that is represented by the graphic.45. The method of claim 42, wherein the display characteristic comprisesan indicator of a special offer by a vendor associated with the objectthat is represented by the graphic.
 46. The method of claim 42, furthercomprising defining two or more zones, each zone being differentiatedbased on distances from the mobile device, and wherein the displaycharacteristic of the graphic is differentiated based on the objectbeing located in a selected one of the zones.
 47. An apparatuscomprising: at least one processor; and at least one memory includingcomputer program instructions; the at least one memory and the computerprogram instructions configured to, with the at least one processor,cause the apparatus at least to: receive network content in response toa network search query, wherein the network content is based at least inpart on a geolocation of the apparatus; determining, based on a secondgeolocation associated with at least one object described in the networkcontent, a virtual location in the camera view that associated with theactual location of the object relative to a scene contained in thecamera view; and display a graphic representing the object at thevirtual location in the camera view.
 48. The apparatus of claim 47,wherein the at least one memory and the computer program instructions,with the at least one processor, further cause the apparatus to: measurethe geolocation of the apparatus; and include an indicator of thegeolocation of the apparatus in the network search query, wherein thenetwork content is based on the indicator included in the network searchquery.
 49. The apparatus of claim 48, wherein the network search queryfurther includes geographic boundary data used for further filtering thenetwork content.
 50. The apparatus of claim 49, wherein the geographicboundary data comprises a bounding volume determined at least in partbased on the camera view.
 51. The apparatus of claim 49, wherein thegeographic boundary data comprises a distance from the apparatus. 52.The apparatus of claim 47, wherein displaying the graphic representingthe object comprises differentiating a display characteristic of thegraphic based on a distance of the object from the apparatus.
 53. Theapparatus of claim 52, wherein the display characteristic comprises anycombination of size, color, line style, and transparency of the graphic.54. The apparatus of claim 52, wherein the display characteristiccomprises a level of detail used to describe the object that isrepresented by the graphic.
 55. The apparatus of claim 52, wherein thedisplay characteristic comprises an indicator of a special offer by avendor associated with the object that is represented by the graphic.56. The apparatus of claim 52, wherein the at least one memory and thecomputer program instructions, with the at least one processor, furthercause the apparatus to define two or more zones, each zone beingdifferentiated based on distances from the apparatus, and wherein thedisplay characteristic of the graphic is differentiated based on theobject being located in a selected one of the zones.
 57. Acomputer-readable storage medium having instructions stored thereonwhich are executable by a processor to cause an apparatus at least to:receive network content in response to a network search query, whereinthe network content is based at least in part on a geolocation of theapparatus; determining, based on a second geolocation associated with atleast one object described in the network content, a virtual location inthe camera view that associated with the actual location of the objectrelative to a scene contained in the camera view; and display a graphicrepresenting the object at the virtual location in the camera view. 58.The computer-readable storage medium of claim 57, wherein theinstructions stored are further executable to cause the apparatus to:measure the geolocation of the apparatus; and include an indicator ofthe geolocation of the apparatus in the search query, wherein thenetwork content is based on the indicator included in the network searchquery.
 59. The computer-readable storage medium of claim 58, wherein thenetwork search query further includes geographic boundary data used forfurther filtering the network content.
 60. The computer-readable storagemedium of claim 57, wherein displaying the graphic representing theobject comprises differentiating a display characteristic of the graphicbased on a distance of the object from the apparatus.